Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Wimbledon - London Porto Challenger Prague 3 Challenger Mallorca Challenger U.S. Open - New York Seville Challenger Lisbon Challenger Stockholm Open - Stockholm Ortisei Challenger Ismaning Challenger Calgary Challenger Guayaquil Challenger Drummondville Challenger Oeiras 1 Challenger Oeiras 2 Challenger Quimper Challenger Phoenix Challenger Oeiras 4 Challenger Millennium Estoril Open - Estoril Mouilleron-Le-Captif Challenger Roanne Challenger Matsuyama Challenger Kobe Challenger Chennai Challenger Grodzisk Mazowiecki Challenger New Delhi Challenger Francavilla Challenger Naples Challenger Tiriac Open - Bucharest Rome Challenger Hamburg Open - Hamburg Heilbronn Challenger Sassuolo Challenger Nordea Open - Bastad Szczecin Challenger Lisbon Challenger BNP Paribas Nordic Open - Stockholm Spain F17 Spain F18 Spain F22 Spain F23 Spain F26 Spain F27 Spain F34 Spain F35 Portugal F4 Portugal F5 Spain F38 Spain F39 Spain F19 Spain F40 Spain F41 Spain F5 Spain F6 Spain F8 Spain F9 Spain F10 Spain F13 Spain F18 Spain F19 Spain F20 Spain F31 Spain F34 Portugal F7 Spain F39 Spain F40 Spain F41 Spain F42 United Arab Emirates F1 United Arab Emirates F2 Spain F3 Spain F4 Spain F5 Spain F7 Spain F30 Spain F10 Spain F11 Turkey F4 Turkey F5 Turkey F6 Spain F16 Spain F17 Spain F18 Spain F20 Portugal F8 Spain F21 France F12 Spain F28 Spain F29 Spain F30 Portugal F4 Portugal F5 Spain F35 Spain F37 Spain F3 Spain F4 Italy F2 Spain F18 Spain F36 Spain F36 Spain F37 Spain F38 Italy F3 Spain F16 Spain F17 Spain F19 Spain F20 Italy F17 Spain F31 Spain F35 France F4 Spain F14 Spain F15 Portugal F2 Portugal F3 Egypt F1 Egypt F2 Egypt F3 Egypt F4 Canada F6 Sweden F4 Sweden F6 Sweden F7 Israel F1 Israel F2 Israel F3 Great Britain F5 Great Britain F6 Great Britain F7 Egypt F12 Egypt F13 Egypt F14 Sweden F2 Romania F3 Netherlands F1 Netherlands F2 Netherlands F3 Spain F33 Spain F3 Spain F17 Romania F11 Portugal F1 Romania F10 Spain F33 Mamaia Challenger - Constanta Kos Succhetti Tennis Cup - Cordenons Orbetello Challenger Seville Challenger Tanger Challenger Leon Challenger Istanbul Challenger Manerbio Challenger Seville Challenger Izmir Challenger Heilbronn Challenger Courmayeur Challenger Quimper Challenger Casablanca Challenger Szczecin Challenger Tampere Challenger Sibiu Challenger Cordenons Challenger Brasil Open - Sao Paulo Furth Challenger Poznan Challenger Andria Challenger Tampere Challenger Helsinki Challenger Aptos Challenger Brescia Challenger Barletta Challenger Aix En Provence Challenger Bordeaux Challenger Prostejov Challenger Caltanissetta Challenger Perugia Challenger Manerbio Challenger Rome Challenger Mohammedia Challenger Dallas Challenger 84° Concurso Internacional Tenis San Sebastian - San Sebastian San Francisco Challenger Barletta Challenger Poprad Tatry Challenger Bastad Challenger Tampere Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Tiburon Challenger Stockton Challenger Bangalore Challenger Rennes Challenger Budapest Challenger St. Brieuc Challenger Aix En Provence Challenger Prostejov Challenger Chicago Challenger Orleans Challenger Brest Challenger Mouilleron-Le-Captif Challenger Bangalore Challenger Pune Challenger Phoenix Challenger Aix En Provence Challenger Heilbronn Challenger Poznan Challenger Lyon Challenger Ludwigshafen Challenger Tarragona Challenger Rennes Challenger Hamburg Challenger Rabat Challenger Tallahassee Challenger Canberra Challenger Nur-Sultan Challenger Prague Challenger Reggio Emilia Challenger Aix En Provence Challenger Split Challenger Istanbul Challenger Recanati Challenger Cary Challenger Tampere Challenger Orlando Challenger Antalya 2 Challenger Biella 4 Challenger Split 1 Challenger Split 2 Challenger Ostrava Challenger Prague Challenger Lyon Challenger Aix En Provence Challenger Braunschweig Challenger Sao Paulo Challenger Mallorca Challenger St. Tropez Challenger Cassis Challenger Biel Challenger Guangzhou Challenger Pingguo Challenger St. Brieuc Challenger Rome Challenger Cremona Challenger Furth Challenger Kosice Challenger Marburg Challenger Braunschweig Challenger Tampere Challenger Segovia Challenger San Marino Challenger San Sebastian Challenger Trnava Challenger Orleans Challenger Madrid Challenger Eckental Challenger Kazan Challenger Meknes Challenger Quimper Challenger Bergamo Challenger Meknes Challenger Casablanca Challenger Rabat Challenger Marrakech Challenger Mersin Challenger Mouilleron-Le-Captif Challenger Alicante Challenger Kosice Challenger Milan Challenger Marrakech Challenger Tenerife Challenger Helsinki Challenger Como Challenger Alphen Challenger Trnava Challenger San Juan Challenger Rio De Janeiro Challenger Porto Alegre Challenger Montevideo Challenger Quimper Challenger Eckental Challenger BNP Paribas Masters - Paris Bordeaux Challenger Kosice Challenger Marbella Challenger Todi Challenger San Benedetto Challenger Guimaraes Challenger Bordeaux Challenger Prostejov Challenger Perugia Challenger Montechiarugolo - Parma Challenger Salzburg Challenger Bratislava Challenger Tunis Challenger Tulln Challenger Arad Challenger Liberec Challenger Cordenons Challenger Bangkok Challenger Helsinki Challenger Napa Challenger Sacramento Challenger Tiburon Challenger Turin Challenger Drummondville Challenger Turin Challenger Rome Challenger Furth Challenger Caltanissetta Challenger Poznan Challenger Ilkley Challenger Braunschweig Challenger Poznan Challenger Eckental Challenger Vancouver Challenger Istanbul Challenger Izmir Challenger Mons Challenger Shanghai Challenger Bratislava Challenger Maia Challenger Bergamo Challenger Jonkoping Challenger Phoenix Challenger Seville Challenger Aix En Provence Challenger Cassis Challenger Biella Challenger Orleans Challenger Alicante Challenger Malaga Challenger Como Challenger Lima 2 Challenger Valencia Challenger Bastad Challenger Manama Challenger Rome Challenger Aix En Provence Challenger Naples Challenger Girona Challenger Bordeaux Challenger Lyon Challenger Oeiras 3 Challenger Furth Challenger Cordenons Challenger Mauthausen Challenger Tunis Challenger Istanbul Challenger Bordeaux Challenger Yokohama Challenger Madrid Challenger Cary Challenger Monza Challenger Rennes Challenger Perugia Challenger Braunschweig Challenger Zug Challenger Porto Challenger Tampere Challenger Seville Challenger Bad Waltersdorf Challenger Seoul Challenger Rome 1 Challenger Mouilleron-Le-Captif Challenger Kobe Challenger Toulouse Challenger Girona Challenger Vicenza Challenger Rennes Challenger St. Tropez Challenger Braga Challenger Bastad Challenger Tunis Challenger Bratislava 2 Challenger Montevideo Challenger Brest Challenger Ostrava Challenger Sassuolo Challenger Cary Challenger Orleans Challenger Yokkaichi Challenger Alicante Challenger Rennes Challenger Pune Challenger Zadar Challenger Genova Challenger Oeiras 5 Challenger Helsinki Challenger Vilnius Challenger Prague II Challenger Oeiras 3 Challenger Porto 2 Challenger Prostejov Challenger Marbella Challenger Braga Challenger Taipei Challenger Seoul Challenger Helsinki Challenger Andria Challenger Tunis Challenger Vicenza Challenger Estoril Open - Estoril Estoril Open - Estoril Open 13 - Marseille Estoril Open - Estoril German Tennis Championships - Hamburg Aircel Chennai Open - Chennai Heineken Open - Auckland Open Sabadell Atlantico - Barcelona Estoril Open - Estoril Studena Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Aircel Chennai Open - Chennai Apia International - Sydney Brasil Open - Sao Paulo Copa Claro - Buenos Aires Power Horse Cup - Dusseldorf Winston-Salem Open - Winston-Salem If Stockholm Open - Stockholm Valencia Open - Valencia Apia International - Sydney Rio Open 500 - Rio de Janeiro Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Power Horse Cup - Dusseldorf Open de Nice Cote d'Azur - Nice Gerry Weber Open - Halle Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Winston-Salem Open - Winston-Salem Moselle Open - Metz China Open - Beijing If Stockholm Open - Stockholm Aircel Chennai Open - Chennai Heineken Open - Auckland Open Sud de France - Montpellier Ecuador Open - Quito ABN AMRO World Tennis Tournament - Rotterdam Brasil Open - Sao Paulo Open 13 - Marseille Dubai Duty Free Tennis Championships - Dubai Barcelona Open BancSabadell - Barcelona Geneva Open - Geneva Topshelf Open - 's-Hertogenbosch AEGON Championships - London Aegon Nottingham Open - Nottingham SkiStar Swedish Open - Bastad Vegeta Croatia Open - Umag Credit Agricole Suisse Open - Gstaad Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur Kremlin Cup - Moscow Aircel Chennai Open - Chennai Open Sud de France - Montpellier ABN AMRO World Tennis Tournament - Rotterdam Maia Challenger Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Open de Nice Cote d'Azur - Nice Gerry Weber Open - Halle Aegon Nottingham Open - Nottingham Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Rakuten Japan Open - Tokyo If Stockholm Open - Stockholm Erste Bank Open - Vienna ASB Classic - Auckland Argentina Open - Buenos Aires Delray Beach Open - Delray Beach Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril Geneva Open - Geneva Gerry Weber Open - Halle Konzum Croatia Open - Umag Suisse Open - Gstaad Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg European Open - Antwerp ASB Classic - Auckland Garanti Koza Sofia Open - Sofia ABN AMRO World Tennis Tournament - Rotterdam Grand Prix Hassan II - Marrakech Gazprom Hungarian Open - Budapest Millennium Estoril Open - Estoril TEB BNP Paribas Istanbul Open - Istanbul Open Parc - Lyon Gerry Weber Open - Halle Antalya Cup - Antalya SkiStar Swedish Open - Bastad Chengdu Open - Chengdu China Open - Beijing Intrum Stockholm Open - Stockholm ASB Classic - Auckland Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Geneva Open - Geneva Noventi Open - Halle SkiStar Swedish Open - Bastad Swiss Open - Gstaad Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Chengdu Open - Chengdu Rakuten Japan Open - Tokyo Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel If Stockholm Open - Stockholm ASB Classic - Auckland ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai European Open - Antwerp Hamburg European Open - Hamburg Argentina Open - Buenos Aires Chile Dove Men+Care Open - Santiago Abierto Mexicano Telcel - Acapulco Serbia Open - Belgrade Mercedes Cup - Stuttgart Noventi Open - Halle Hall of Fame Open - Newport Nordea Open - Bastad Citi Open - Washington Kremlin Cup - Moscow Sardegna Open - Cagliari Astana Open - Nur-Sultan Melbourne Summer Set - Melbourne Tata Open Maharashtra - Pune Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril BMW Open - Munich Noventi Open - Halle Mallorca Championships - Mallorca If Stockholm Open - Stockholm Nordea Open - Bastad Swiss Open - Gstaad Generali Open - Kitzbuhel Plava Laguna Croatia Open - Umag Winston-Salem Open - Winston-Salem Moselle Open - Metz Abierto Mexicano Telcel - Acapulco Stockholm Open - Stockholm Erste Bank Open - Vienna Korea Open - Seoul Tel Aviv Watergen Open - Tel Aviv Gijon Open - Gijon Tata Open Maharashtra - Pune ASB Classic - Auckland SkiStar Swedish Open - Bastad Cordoba Open - Cordoba Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Open 13 Provence - Marseille Malaysian Open - Kuala Lumpur Abierto Mexicano Telcel - Acapulco Chile Dove Men+Care Open - Santiago Grand Prix Hassan II - Marrakech Millennium Estoril Open - Estoril Banja Luka Open - Banja Luka Open Sud de France - Montpellier Hamburg European Open - Hamburg Abierto Mexicano Telcel - Acapulco Bet-at-home Open - Hamburg Vegeta Croatia Open - Umag Malaysian Open - Kuala Lumpur Rio Open - Rio de Janeiro Citi Open - Washington BNP Paribas Nordic Open - Stockholm Rakuten Japan Open - Tokyo Valencia Open - Valencia St. Petersburg Open - St. Petersburg Millennium Estoril Open - Estoril ASB Classic - Auckland Dubai Duty Free Tennis Championships - Dubai Mallorca Championships - Mallorca SkiStar Swedish Open - Bastad Konzum Croatia Open - Umag Memphis Open - Memphis Rio Open - Rio de Janeiro SkiStar Swedish Open - Bastad Rakuten Japan Open - Tokyo Dubai Duty Free Tennis Championships - Dubai Brasil Open - Sao Paulo Libema Open - 's-Hertogenbosch Turkish Airlines Open Antalya - Antalya Generali Open - Kitzbuhel Murray River Open - Melbourne Cordoba Open - Cordoba Open Parc - Lyon Mallorca Championships - Mallorca Stockholm Open - Stockholm Serbia Open - Belgrade Gonet Geneva Open - Geneva Mercedes Cup - Stuttgart Rakuten Japan Open - Tokyo Valencia Open - Valencia Qatar ExxonMobil Open - Doha Dubai Duty Free Tennis Championships - Dubai Nordea Open - Bastad Open 13 - Marseille Suisse Open - Gstaad Antalya Cup - Antalya If Stockholm Open - Stockholm Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Plava Laguna Croatia Open - Umag Swiss Open - Gstaad Abierto Mexicano - Los Cabos Swiss Indoors Basel - Basel Barcelona Open Banc Sabadell - Barcelona Millennium Estoril Open - Estoril VTR Open - Vina del Mar Irving Challenger Ottignies-Louvain-la-Neuve Challenger Braunschweig Challenger Bordeaux Challenger Bratislava Challenger Bratislava Challenger Vancouver Challenger Split Challenger Winston-Salem Open - Winston-Salem Estoril Open - Estoril Copa Claro - Buenos Aires Qatar ExxonMobil Open - Doha BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati Kremlin Cup - Moscow Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Open 13 Provence - Marseille Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Rogers Cup - Toronto Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris ABN AMRO World Tennis Tournament - Rotterdam BNP Paribas Open - Indian Wells Miami Open - Miami Abierto Mexicano de Tenis Mifel - Los Cabos Monte-Carlo Rolex Masters - Monte-Carlo Truist Atlanta Open - Atlanta Mutua Madrid Open - Madrid Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome National Bank Open - Montreal Rolex Paris Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Mutua Madrid Open - Madrid BNP Paribas Masters - Paris Rogers Cup - Toronto Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells St. Petersburg Open - St. Petersburg Miami Open - Miami Internazionali BNL d'Italia - Rome Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Shanghai Rolex Masters - Shanghai Internazionali BNL d'Italia - Rome Western & Southern Open - Cincinnati Internazionali BNL d'Italia - Rome Western & Southern Open - New York Monte-Carlo Rolex Masters - Monte-Carlo Chengdu Open - Chengdu European Open - Antwerp Brisbane International - Brisbane Open Sud de France - Montpellier BNP Paribas Open - Indian Wells Shenzhen Open - Shenzhen Swiss Indoors Basel - Basel Barcelona Open BancSabadell - Barcelona St. Petersburg Open - St. Petersburg Open Sud de France - Montpellier Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris U.S. Open - New York French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open Qualifying - Doha Wimbledon - London French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Australian Open - Melbourne Wimbledon - London U.S. Open - New York Davis Cup, Group 2, 2R, POR-CYP 5-0 Davis Cup, Group 2, PO, ALG-POR 0-5 Davis Cup, Europe/Africa Group II, 2R, POR-CYP 5-0 Wimbledon - London Davis Cup, Group I, 2R, ISR-POR 3-2 Davis Cup, Group II, 1R, POR-BEN 5-0 Davis Cup, Group I, PO, SWE-DEN 3-2 Davis Cup, Group I, 1R, SLO-POR 3-2 Davis Cup, Group I, PO, RUS-POR 4-1 Davis Cup, Group I, PO, ROU-SWE 3-1 Davis Cup, Group I, 1R, SWE-AUT 2-3 Davis Cup, Group II, 1R, POR-MAR 4-1 Davis Cup, Group II, 2R, POR-FIN 4-1 Davis Cup, Group I, 1R, POR-ISR 5-0 Davis Cup, Group I, 2R, POR-UKR 4-1 Davis Cup, Group II, 2R, TUR-SWE 1-4 Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London Davis Cup, Group I, 1R, ROU-POR 3-1 Davis Cup, Finals, Group B Australian Open - Melbourne Davis Cup, Group A, Bologna Davis Cup, Group I, 1R, POR-BRA 3-1 Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, World Group, Q, SWE-BRA 1-3 Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Internazionali BNL d'Italia - Rome Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Rogers Cup - Montreal U.S. Open - New York Rogers Cup - Toronto Australian Open - Melbourne French Open - Paris Wimbledon (juniors) U.S. Open (juniors) U.S. Open - New York Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments Australian Open - Melbourne French Open - Paris Olympics - Rio de Janeiro Olympics - Tokyo Davis Cup, Group I, PO, SVK-POR 3-1 Davis Cup, Group 2, 1R, CYP-POR 3-2 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group I, 1R, POR-SVK 4-1 Davis Cup, Group I, 2R, SUI-POR 5-0 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group II, 3R, POR-BLR 3-2 Davis Cup, Group I, PO, POR-SLO 5-0 Davis Cup, Group I, PO, ISR-SWE 3-1 Davis Cup, World Group, PO, POR-GER 2-3 Davis Cup, Group I, 2R, SWE-POR 3-2 Davis Cup, World Group, QR, KAZ-POR 3-1 Davis Cup, Group I, 1R, BLR-POR 3-2 Davis Cup, World Group, QR, SWE-CHI 3-1 Davis Cup, Group I, 1R, POR-AUT 1-4 Davis Cup, World Group I, PO, LTU-POR 0-4 Davis Cup, Finals, QF, RUS-SWE 2-0 Davis Cup, Qualifiers, 1R, SWE-JPN 3-2 Davis Cup, Group I, PO, POR-POL 4-0 Davis Cup, World Group, PO, POR-CZE 1-3 Davis Cup, Group A, Bologna Davis Cup, Group I, 1R, AUT-POR 1-3 Davis Cup, World Group, Q, FIN-POR 3-1 Davis Cup, Group I, PO, SWE-NED 0-5 Davis Cup, Group II, 3R, SWE-LTU 5-0 Davis Cup, Group I, 1R, UKR-SWE 2-3 Davis Cup, Group I, PO, UKR-POR 3-1 Davis Cup, World Group, QR, COL-SWE 4-0 Davis Cup, World Group I, 1R, SWE-IND 4-0 Salzburg Challenger Australian Open (juniors) French Open (juniors) Nordea Open - Bastad Miami Open - Miami Davis Cup, Group I, PO, POR-RSA 4-0